// components/login-modal/login-modal.js
const app = getApp()

Component({
  properties: {
    show: {
      type: Boolean,
      value: false
    },
    title: {
      type: String,
      value: '登录提示'
    },
    content: {
      type: String,
      value: '请先登录后再使用此功能'
    }
  },

  data: {
    loading: false
  },

  methods: {
    // 关闭弹窗
    onClose() {
      this.triggerEvent('close')
    },

    // 获取手机号
    async getPhoneNumber(e) {
      if (this.data.loading) return
      
      this.setData({ loading: true })
      
      try {
        console.log('getPhoneNumber', e)
        if (e.detail.errMsg === 'getPhoneNumber:ok') {
          const { code } = e.detail
          
          // 调用app.ts中的登录方法
          await app.login(code)
          
          wx.showToast({
            title: '登录成功',
            icon: 'success'
          })
          
          console.log('loginSuccess')
          // 关闭弹窗
          this.onClose()
          
          // 触发登录成功事件
          this.triggerEvent('loginSuccess', {})
        } else {
          wx.showToast({
            title: '获取手机号失败',
            icon: 'none'
          })
        }
      } catch (error) {
        console.error('登录失败:', error)
        wx.showToast({
          title: error.message || '登录失败',
          icon: 'none'
        })
      } finally {
        this.setData({ loading: false })
      }
    },

    // 用户拒绝授权
    onUserDeny() {
      wx.showToast({
        title: '需要手机号才能使用完整功能',
        icon: 'none'
      })
    }
  }
}) 